package com.estore.manager;

import java.util.List;

import com.estore.entity.Account;
import com.estore.entity.FavoriteProduct;
import com.estore.entity.Role;
import com.estore.info.AccountInfo;
import com.estore.info.ProfileInfo;
import com.estore.info.RegisterInfo;

public interface ProfileManager {
	public List<ProfileInfo> getListProfileInfo();

	public AccountInfo getAccountInfo(String user, String pass);

	public void editProfileInfo(int userID, String lastName, String firstName,
			String email, String dateOfBirth, String sex, String address, String phoneNumber);

	public ProfileInfo getProfileInfo(int userID);

	public Role getRole(int userID);

	public Account getAccountInfo(int userID);
	
	public void register(RegisterInfo registerInfo);
	
	public boolean checkAccountAvail(String account);
	
	public boolean checkEmailAvail(String email);
	
	public void updateRole(Integer userID);
	
	public ProfileInfo getUserInfo(Integer UserID);
	
	public boolean checkForgetPwd(ProfileInfo info);
	
	public void changePwd(String account, String pwd);
	
	public void changeProfile(ProfileInfo info);
	
	public void changeAvatar(String linkAvatar, String userID);
	
	public boolean checkSecret(ProfileInfo info);
	
	public void changeEmail(String email, String account);
	
	public void addFavoriteProduct(FavoriteProduct info);
	
	public boolean checkFavoriteProduct(Integer productID, Integer userID, Integer type);
	
	public List<FavoriteProduct> getWatchListProduct(Integer userID, Integer type);
	
	public void removeFavoriteProduct(Integer userID, Integer productID, Integer type);
}
